-
Notifications
You must be signed in to change notification settings - Fork 209
chore: Nested STSN providers support #3781
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
8683d4f to
1fca2aa
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3781 +/- ##
========================================
Coverage 97.07% 97.08%
========================================
Files 835 835
Lines 24197 24202 +5
Branches 8069 8479 +410
========================================
+ Hits 23490 23496 +6
+ Misses 702 658 -44
- Partials 5 48 +43 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
1fca2aa to
09a8244
Compare
09a8244 to
2453a8e
Compare
2453a8e to
8783184
Compare
|
Would this be a good time to also centralize these two implementations? https://github.com/cloudscape-design/component-toolkit/tree/main/src/internal/single-tab-stop |
Let's merge this one first as a dependency for the tree view impl. I will follow it up by opening a pr to the toolkit and then later once toolkit changes are released - replacing the components based implementation with the toolkit imports. Edit: created PR: cloudscape-design/component-toolkit#155 |
Description
The PR makes it possible to nest STSN providers. The use cases that we have are:
The idea of the change is rather simple: at any given point in time only one provider can be active. The active provider is the outer-most provider with navigationActive=true. If the outer provider changes state from true to false - the nested provider becomes active instead. This allows a dynamic switch of navigation contexts (e.g. when a tree toggle is focused - the tree navigation is engaged; when the focus is inside a tree item - the button group which can be rendered inside receives control). In some cases, it is not even necessary to do the switching. Thus, the table navigation controller is already capable of handling the nested button group navigation on its own, the only difference is that the button group focus is no longer looped.
Screen.Recording.2025-08-22.at.13.25.55.mov
Rel: AWSUI-61152, [AaSEAuz8NXla]
How has this been tested?
Review checklist
The following items are to be evaluated by the author(s) and the reviewer(s).
Correctness
CONTRIBUTING.md.CONTRIBUTING.md.Security
checkSafeUrlfunction.Testing
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.